package SparkRDD.RDD算子.Transformations.过滤操作

import org.apache.spark.{SparkConf, SparkContext}
import org.junit.Test

/*
  * sample 算子可以从一个大数据集中抽取一部分样例，常用作减小数据集以保证运行速度，并且尽可能地减小规律的损失
  * withReplacement: 是否有放回。 true --- 抽样有重复  false --- 抽样不重复
  * fraction: 抽样比例
  * seed: 随机种子

 */

class sampleTest {

  val conf = new SparkConf().setMaster("local[6]").setAppName("sample")
  val sc   = new SparkContext(conf)

  @Test
  def sampleTest: Unit ={
    val rdd1 = sc.parallelize(Seq(0,1,2,3,4,5,6,7,8,9,10))
    val rdd2 = rdd1.sample(true,0.6)
    val result = rdd2.collect()
    result.foreach( item => println(item))
  }
}
